1. Field of the Invention
The present invention relates to a COFDM (“Coded Orthogonal Frequency Division Multiplex”) demodulator, and more specifically to such a demodulator used for radio transmissions.
2. Description of the Related Art
FIG. 1 is intended for illustrating the principle of a COFDM modulation. Data packets to be transmitted are put in the form of N complex coefficients associated with N respective frequencies. The number N of frequencies is a power of 2, equal, for example, to 8192 (digital television diffusion). Each complex coefficient corresponds to a vector that is illustrated in FIG. 1 as starting from a frequency axis at a point indicating the frequency associated with the coefficient.
The N coefficients are processed by inverse fast Fourier transform (IFFT), which generates a “symbol” formed of a sum of modulated carriers, each carrier having the amplitude and the phase determined by the associated complex coefficient. The symbol thus generated is transmitted and a receiver submits it to the inverse processing, that is, a fast Fourier transform (FFT) to restore the initial complex coefficients.
As shown in FIG. 1, some regularly distributed vectors P1, P2, P3 . . . have a known constant value. These vectors, or the corresponding carriers, are called the pilot carriers. They are used to reflect the distortions undergone by the transmitted signal and to interpolate the corrections to be performed on the unknown vectors located between the pilots.
FIG. 2 illustrates a transmission of several successive symbols Sn-1, Sn . . . As shown, each of these symbols is preceded by a guard interval G that is a copy of a portion of the end of the corresponding symbol. The guard intervals are used to avoid inter-symbol modulation distortions caused by an echo of the transmission at the receive level. FIG. 2 also shows an echo SEn-1, GEn-1 . . . of the transmitted signal. This echo is delayed with respect to the main signal by a duration shorter than that of a guard interval G.
Each symbol S is normally analyzed by the FFT circuit of the receiver in a window W of the same length as the symbol. If there were no guard interval, an analysis window W coinciding with a symbol of the main signal would straddle two symbols of the echo signal. This would result in an error difficult to correct in the FFT.
Guard interval G, provided that it is greater than the echo delay, provides an adjustment margin of analysis window W so that it only coincides with portions belonging to the same symbol, in the main signal as well as in the echo. The fact that an analysis window straddles a symbol and its guard interval only results in a phase-shift that is corrected, in particular, by means of the above-mentioned pilot carriers.
FIG. 3 illustrates a method used in a conventional COFDM demodulator, such as described in French patent 2,743,967 to find the symbol beginnings, at the beginning of a reception, this to adjust analysis window W. A correlation product between the received signal and this same signal delayed by one symbol is performed. This enables detecting the time when each guard interval of the delayed signal coincides with an identical portion of the received signal, that is, the end of the corresponding symbol in the received signal.
Correlation product C, initially zero, starts progressively increasing from the beginning of each guard interval of the delayed signal. The maximum value is reached at the end of the guard interval, after which correlation product C starts decreasing to reach value zero. In the presence of an echo signal, the correlation peaks are lower and shift in the echo direction, so that they quite well show where the analysis windows are to start.
However, signals are most often noise-infested and it is difficult to determine the position of the correlation peaks with sufficient precision. For this purpose, the circuit described in the above-mentioned French patent enables refining the position, upon circuit setting, by analyzing the pulse response of the channel. Of course, the received signal may undergo frequency or phase drifts in operation, whereby the position of the windows must be regularly revised as will be described hereafter.
FIG. 4 very schematically shows the architecture of a COFDM demodulator such as described in the above-mentioned French patent. It is a system for receiving radio-transmitted digital television signals. In a radio transmission, the symbols are carried by a carrier of high frequency, which frequency is lowered by a tuner not shown. An element 10 of the architecture of FIG. 4 extracts the symbols from this carrier and converts them into digital. An element 12 determines the position of the analysis windows, as described in relation with FIG. 3, and readjusts, if necessary, the position of the analysis windows. The FFT is performed at 14 with the windows determined at 12. The coefficients provided by the FFT are put to wait at 16 to interpolate at 18 the distortions undergone by the coefficients. The distortions, which are complex numbers, are used to correct the coefficients at 20.
The pulse response of the channel is calculated at 22 based on the distorted pilots such as received. This pulse response enables determining whether the analysis window position is correct or whether it must be modified. The optimal window position is obtained when the power of the pulse response is maximum.
As indicated previously, each symbol includes pilots of known identical characteristics (they generally have a unity amplitude and a null or 180° phase, according to a law known by the receiver). The pilots such as received by the demodulator reflect the distortions undergone by the pilots. The value of the distortion is Ap=Pp/Ep, where Pp is the value of the received pilot of position p and Ep is the value of the corresponding transmitted pilot. A distortion Ap is currently called an “anchor”. These anchors are used to calculate by interpolation the distortions, noted dk hereafter (k≠p), at the positions k having no pilot.
The error correction at 20 consists of calculating the ratio of the coefficients such as received and of the respective interpolated distortions: Dk=Rk/dk, where Dk is the corrected value and Rk is the received value.
Given that the pilots do not carry data, their number is desired to be limited. However, the smaller the number of pilots, the more interpolation errors between two consecutive pilots are made. To improve this situation, the pilots are shifted by several positions from one symbol to the next one and a bidimensional interpolation is performed on several consecutive symbols. In the example described hereafter, each symbol includes one pilot every twelve positions and the pilots are shifted by three positions from one symbol to the next one.
FIG. 5 illustrates this bidimensional interpolation. It shows an array, the rows of which correspond to consecutive symbols, the last received symbol being at the last row. The array columns correspond to the successive symbol carrier positions or frequencies. Hatched squares correspond to the received anchors. Due to the shifting of the pilots from one symbol to the next one, close anchors appear in some columns (every three columns in the present example).
All the distortions are first interpolated in the columns containing the anchors. Then, a finite impulse response filter 24 interpolates the missing distortions of each row.
With the above-mentioned example, the distortions of a symbol n-3 can be interpolated at the time when symbol n is received. Further, the interpolation of some distortions of symbol n-3 will require anchors of prior symbols, back to symbol n-6. This method thus requires completely storing symbols n-1 to n-3 and also storing the anchors only of symbols n-4 to n-6.
An interpolated, distortion of position k in a symbol n expresses as:
                              d                      n            ,            k                          =                                            (                              1                -                                  s                  4                                            )                        ⁢                          A                                                n                  -                  s                                ,                k                                              +                                    s              4                        ⁢                          A                                                n                  +                  4                  -                  s                                ,                k                                                                        (        1        )            where terms A are the received anchors andwhere s=(n modulo 4−k/3 modulo 4) modulo 4.
As an example, with this expression, the interpolated distortion in third position of symbol n-3 in FIG. 5 is expressed as ¾An-4+¼An.
FIG. 6 schematically shows a distortion interpolation circuit 18 implementing the method of FIG. 5. Delay circuit 16 of FIG. 4 stores three consecutive symbols Sn-1, Sn-2, Sn-3 in a shift register. The received anchors An-1 to An-6 of six consecutive symbols necessary to interpolate the distortions in the columns are stored in six cascade-connected shift registers 26. Register 16 and the first register 26 receive current symbol Sn. A four-input multiplexer 28 receives on a first input the anchors of symbol Sn, multiplied by one quarter; on a second input, the anchors An-1 provided by the first register 26, multiplied by one half; on a third input, the anchors An-2 provided by the second register 26, multiplied by three quarters; and on its fourth and last input, the anchors An-3 provided by the third register 26.
A multiplexer 30 receives on a first input anchors An-4 provided by the fourth register 26, multiplied by three quarters; on a second input, anchors An-5 provided by the fifth register 26, multiplied by one half; on a third input, anchors An-6 provided by the sixth register 26, multiplied by one quarter; and on its last input, value 0. At 32, the sum of the outputs of multiplexers 28 and 30 is provided to filter 24. Multiplexers 28 and 30 are controlled by a same selection signal SEL that selects the adequate input of the multiplexers according to position k of the distortion to be interpolated.
As indicated previously, the position of the FFT analysis window is determined once, and for all in a setting phase. It is however provided to regularly check that the window position is good and to readjust this position if necessary. However, when the position of the analysis window is modified, the phase of each of the symbol carriers is correlatively modified, and this phase modification appears as a distortion that must be corrected. If the phase modification occurs for a current symbol n, the anchors of this current symbol will not have the same phase reference as the anchors of the preceding symbols, whereby it will be impossible to interpolate the distortions involving the anchors of symbol n.
FIG. 7 is intended for illustrating this phenomenon in further detail. This drawing shows a phase variation of an anchor of same position in consecutive symbols numbered from zero, this in the context of the example of FIG. 5 where an anchor is found at the same position every four symbols.
It is assumed that the received symbols regularly take advance on the fixed analysis window, which results in an increase of the anchor phase, as shown for symbols 0, 4, and 8, 12. The interpolated phases are marked with circles located on straight lines connecting the phase values of the anchors.
At the seventh symbol, the analysis window is advanced by an interval X to catch up on the symbol phase advance. As a result, the phase should evolve as indicated by squares, that is, continuing to regularly increase for symbols 5 and 6, abruptly dropping for symbol 7, and regularly increasing again. The phase drop is sensible for the first time in the anchor of symbol 8, and the errors interpolated for symbols 5 to 7, being located on the straight line connecting the phase values of the anchors of symbols 4 and 8, are erroneous. As a result, symbols 5 to 7 are lost, which loss is most often perceptible, especially on a television screen in the case where the symbols correspond to video signals.
When the receiver and the transmitter are at fixed positions, as it is in most cases, an analysis window readjustment seldom occurs and such signal disturbances may be acceptable.
However, it may be envisaged to use a receiver in a moving vehicle, such as a train, in which case the window readjustments should be frequent, making unacceptable the disturbances that this would cause.